<?php session_start();

function getReservas($cod, $tipo){

	//efetuando reserva
	$campo1 = "id_reserva";
	$campo2 = "data_cad_reserva";
	$campo3 = "id_quem_cad";
	$campo4 = "dt_reserva_ini";
	$campo5 = "dt_reserva_fim";
	$campo6 = "id_cama";
	$campo7 = "id_tp_habitacao";
	$campo8 = "id_hostel";
	$campo9 = "nome";
	$campo10 = "tel";
	$campo11 = "cel";
	$campo12 = "email";
	$campo13 = "obs_reserva";
	$campo19 = "dt_cancela_auto";
	$campo22 = "num_pessoas";
	$campo23 = "reserva_confirmada";

	//efetuando check in
	$campo14 = "dt_checkin";
	$campo15 = "id_pessoa";
	$campo16 = "num_comanda";

	//efetuando check out ou  cancelamento
	$campo17 = "data_baixa";
	$campo18 = "id_quem_baixa";
	$campo20 = "cancelada";
	$campo21 = "vl_pg_total";

	$tabela = "hostel_reservas";


	switch ($tipo){
		case "input":
			$sql="select $campo1, $campo2, $campo3, $campo4, $campo5, $campo6, $campo7, $campo8, $campo9, $campo10, $campo11, $campo12, $campo13, $campo14, $campo15, $campo16, $campo17, $campo18, $campo19, $campo20, $campo21, $campo22, $campo23 from $tabela where $campo1=$cod";
			$linha=$_SESSION['ADOCnn']->Execute("$sql");
			$codigo = $linha->fields[0];

			$contatena = $codigo."()".$linha->fields[1]."()".$linha->fields[2]."()".$linha->fields[3]."()".$linha->fields[4]."()".$linha->fields[5]."()".$linha->fields[6]."()".$linha->fields[7]."()".$linha->fields[8]."()".$linha->fields[9]."()".$linha->fields[10]."()".$linha->fields[11]."()".$linha->fields[12]."()".$linha->fields[13]."()".$linha->fields[14]."()".$linha->fields[15]."()".$linha->fields[16]."()".$linha->fields[17]."()".$linha->fields[18]."()".$linha->fields[19]."()".$linha->fields[20]."()".$linha->fields[21]."()".$linha->fields[22];

			$retorno = explode("()",$contatena);
			return $retorno;

			break;

		case "id_tp_habitacao_camas_ocupadas":
			$sql="select id_tp_habitacao from $tabela where $campo1=$cod and ($campo17 is null) and ($campo21 is null) and (id_hostel = {$_SESSION["ID_HOSTEL_"]})";
			echo $sql;
			$linha=$_SESSION['ADOCnn']->Execute("$sql");
			return  $linha->fields[0];

			break;

		case "reserva_confirmada":
			$sql="select reserva_confirmada from $tabela where $campo1=$cod ";
			//echo $sql;
			$linha=$_SESSION['ADOCnn']->Execute("$sql");
			return  $linha->fields[0];

			break;

		case "encerrada":
			$sql="select count($campo1) from $tabela where $campo1=$cod and ($campo17 is not null) and ($campo21 > 0) and (id_hostel = {$_SESSION["ID_HOSTEL_"]})";
			//echo $sql;
			$linha=$_SESSION['ADOCnn']->Execute("$sql");
			return  $linha->fields[0];

			break;

			####
		case "mini_informacoes":
			$sql="	SELECT
					    id_reserva,
					    id_cama,
					    data_cad_reserva,
					    dt_reserva_ini,
					    dt_reserva_fim,
					    nome as nome_pessoa,
					    tel,
					    cel,
					    email,
					    obs_reserva
	    			from $tabela 
	    			where 
	    				(id_reserva = $cod) and
	    				(id_hostel = {$_SESSION["ID_HOSTEL_"]}) 	
	    			";
			//echo $sql;
			$linha=$_SESSION['ADOCnn']->Execute("$sql");
			echo"
				<u>Detalhes da Ocupa&ccedil;&atilde;o: $cod</u> - Informa&ccedil;&otilde;es do Hospede
					<table class='resultado2'>
				     <tr class='titulo'>	
							<td>Nome</td>
							<td>Tel / Cel</td>
							<td>E-mail</td>
							<td>Data cadastro</td>
							<td>Reserva para</td>
							<td>Observa&ccedil;&otilde;es</td>
					 </tr>";


			echo"<tr class='$class'>
							<td><a href='mapa.jsp?pid_reserva={$linha->fields['id_reserva']}&pid_cama={$linha->fields['id_cama']}'>{$linha->fields['nome_pessoa']}</a>
							<input type='hidden' name='pid_reserva' value='{$linha->fields['id_reserva']}'>
							<input type='hidden' name='pid_cama' value='{$linha->fields['id_cama']}'>
							</td>
							<td>{$linha->fields['tel']} {$linha->fields['cel']}</td>
							<td>{$linha->fields['email']}</td>
							<td>".formataDataHora($linha->fields['data_cad_reserva'])."</td>
							<td>".formataData($linha->fields['dt_reserva_ini'],false)."&nbsp;".getHorario("E")."&nbsp;at&eacute;<br>".formataData($linha->fields['dt_reserva_fim'])."&nbsp;".getHorario("S")."</td>
							<td>{$linha->fields['obs_reserva']}</td>
						</tr>";
			echo"</table><br>";
			break;
			####
		case "informacoes_recibo":
			$sql="	SELECT
					    id_reserva,
					    id_cama,
					    data_cad_reserva,
					    dt_reserva_ini,
					    dt_reserva_fim,
					    nome as nome_pessoa,
					    tel,
					    cel,
					    email,
					    obs_reserva
	    			from $tabela 
	    			where 
	    				(id_reserva = $cod) and
	    				(id_hostel = {$_SESSION["ID_HOSTEL_"]}) 	
	    			";
			//echo $sql;
			$linha=$_SESSION['ADOCnn']->Execute("$sql");
			echo"
				<fieldset class='subgrupo'><legend>Detalhes da Ocupa&ccedil;&atilde;o: $cod - Informa&ccedil;&otilde;es do Hospede</legend>
				<input type='hidden' name='pid_reserva' value='{$linha->fields['id_reserva']}'>
				<input type='hidden' name='pid_cama' value='{$linha->fields['id_cama']}'>
					<table class='resultado2'>
				 		<tr class='odd'>
							<td width='100' align='right'>
								<b>Nome:</b><br>
								<b>Tel:</b><br>
								<b>E-mail:</b><br>
								<b>Entrada:<br>Sa&iacute;da:</b>
							</td>
							<td>
								<a href='mapa.jsp?pid_reserva={$linha->fields['id_reserva']}&pid_cama={$linha->fields['id_cama']}'>{$linha->fields['nome_pessoa']}</a><br>
								{$linha->fields['tel']} {$linha->fields['cel']}<br>
								{$linha->fields['email']}<br>
								".formataData($linha->fields['dt_reserva_ini'],false)."&nbsp;".getHorario("E")."&nbsp;at&eacute;<br>".formataData($linha->fields['dt_reserva_fim'])."&nbsp;".getHorario("S")."
							</td>
					
						</tr>";
			echo"</table><br>
			</fieldset>";
			break;
			####

		case "exibe_nao_confirmadas":
			$hj = date("Y-m-d H:i:s");
			$sql="	SELECT
					    id_reserva,
					    id_cama,
					    data_cad_reserva,
					    dt_reserva_ini,
					    dt_reserva_fim,
					    nome as nome_pessoa,
					    tel,
					    cel,
					    email,
					    obs_reserva,
					    id_pessoa
	    			from $tabela 
	    			where 
	    				(dt_checkin is null) and
						(reserva_confirmada = 0) and
						(cancelada = 0) and
						(dt_cancela_auto > '$hj') and
	    				(id_hostel = {$_SESSION["ID_HOSTEL_"]}) and  
	    				(data_baixa is null)
	    			order by dt_reserva_ini asc		    			
	    			";
			//echo $sql;
			$linha=$_SESSION['ADOCnn']->Execute("$sql");
			$class="even";
			$n=0;
			if($linha->RecordCount() != 0 ){
				echo"<fieldset class='subgrupo'><legend>&nbsp;</legend>
					<table class='resultado2'>
				     <tr class='titulo'>	
							<td>Nome</td>
							<td>Tel / Cel</td>
							<td>E-mail</td>
							<td>Data cadastro</td>
							<td>Reserva para</td>
							<td>Observa&ccedil;&otilde;es</td>
							<td>Ficha</td>
					 </tr>";

				while(!$linha->EOF){
					if($class == "odd"){$class="even";}else{$class="odd";}



					echo"<tr class='$class'>
							<td><a href='mapa.jsp?pid_reserva={$linha->fields['id_reserva']}&pid_cama={$linha->fields['id_cama']}'>{$linha->fields['nome_pessoa']}</a></td>
							<td>{$linha->fields['tel']} {$linha->fields['cel']}</td>
							<td>{$linha->fields['email']}</td>
							<td>".formataDataHora($linha->fields['data_cad_reserva'])."</td>
							<td>".formataData($linha->fields['dt_reserva_ini'],false)."&nbsp;".getHorario("E")."&nbsp;at&eacute;<br>".formataData($linha->fields['dt_reserva_fim'])."&nbsp;".getHorario("S")."</td>
							<td>{$linha->fields['obs_reserva']}</td>
								<td>".($linha->fields['id_pessoa'] > 0 ? "<a href='../alts/alt_pes_pessoas.jsp?cont=8&pcodigo={$linha->fields['id_pessoa']}&pid_reserva={$linha->fields['id_reserva']}&pid_cama={$linha->fields['id_cama']}'>Ver</a>":"<a href='../cads/cad_pes_pessoas.jsp?pid_reserva={$linha->fields['id_reserva']}&pid_cama={$linha->fields['id_cama']}'>Preencher</a>")."</td>
						</tr>";
					$n++;
					$linha->MoveNext();
				}
				echo"</table><br><u>Total: $n</u><br><br></fieldset>";
			}
			break;

		case "numero_tot_reservas":
			$hj = date("Y-m-d")." ".getHorario("E").":00";
			$sql="select count($campo1) from $tabela where
						/*(dt_reserva_ini >= '$hj') and*/
						(reserva_confirmada = 0) and
	    				(id_hostel = {$_SESSION["ID_HOSTEL_"]}) and  
	    				(data_baixa is null)";
			//echo $sql;
			$linha=$_SESSION['ADOCnn']->Execute("$sql");
			return $linha->fields[0];
			break;

		case "numero_de_confirmadas":
			$sql="select count($campo1) from $tabela where
						(dt_checkin is null) and
						(reserva_confirmada = 1) and
	    				(id_hostel = {$_SESSION["ID_HOSTEL_"]}) and  
	    				(data_baixa is null)";
			//echo $sql;
			$linha=$_SESSION['ADOCnn']->Execute("$sql");
			return $linha->fields[0];
			break;
		case "exibe_confirmadas":
			$sql="	SELECT
					    id_reserva,
					    id_cama,
					    data_cad_reserva,
					    dt_reserva_ini,
					    dt_reserva_fim,
					    nome as nome_pessoa,
					    tel,
					    cel,
					    email,
					    obs_reserva,
					    id_pessoa
	    			from $tabela 
	    			where 
	    				(dt_checkin is null) and
						(reserva_confirmada = 1) and
	    				(id_hostel = {$_SESSION["ID_HOSTEL_"]}) and  
	    				(data_baixa is null)
	    			order by dt_reserva_ini asc		    			
	    			";
			//echo $sql;
			$linha=$_SESSION['ADOCnn']->Execute("$sql");
			$class="even";
			$n=0;
			if($linha->RecordCount() != 0 ){
				echo"<fieldset class='subgrupo'><legend>&nbsp;</legend>
					<table class='resultado2'>
				     <tr class='titulo'>	
							<td>Nome</td>
							<td>Tel / Cel</td>
							<td>E-mail</td>
							<td>Data cadastro</td>
							<td>Reserva para</td>
							<td>Observa&ccedil;&otilde;es</td>
							<td>Ficha</td>
					 </tr>";

				while(!$linha->EOF){
					if($class == "odd"){$class="even";}else{$class="odd";}



					echo"<tr class='$class'>
							<td><a href='mapa.jsp?pid_reserva={$linha->fields['id_reserva']}&pid_cama={$linha->fields['id_cama']}'>{$linha->fields['nome_pessoa']}</a></td>
							<td>{$linha->fields['tel']} {$linha->fields['cel']}</td>
							<td>{$linha->fields['email']}</td>
							<td>".formataDataHora($linha->fields['data_cad_reserva'])."</td>
							<td>".formataData($linha->fields['dt_reserva_ini'],false)."&nbsp;".getHorario("E")."&nbsp;at&eacute;<br>".formataData($linha->fields['dt_reserva_fim'])."&nbsp;".getHorario("S")."</td>
							<td>{$linha->fields['obs_reserva']}</td>
								<td>".($linha->fields['id_pessoa'] > 0 ? "<a href='../alts/alt_pes_pessoas.jsp?cont=8&pcodigo={$linha->fields['id_pessoa']}&pid_reserva={$linha->fields['id_reserva']}&pid_cama={$linha->fields['id_cama']}'>Ver</a>":"<a href='../cads/cad_pes_pessoas.jsp?pid_reserva={$linha->fields['id_reserva']}&pid_cama={$linha->fields['id_cama']}'>Preencher</a>")."</td>
						</tr>";
					$n++;
					$linha->MoveNext();
				}
				echo"</table><br><u>Total: $n</u><br><br></fieldset>";
			}
			break;
		case "numero_de_ocupadas":
			$sql="select count($campo1) from $tabela where
						(reserva_confirmada = 1) and
						(dt_checkin is not null) and
	    				(id_hostel = {$_SESSION["ID_HOSTEL_"]}) and  
	    				(data_baixa is null)";
			//echo $sql;
			$linha=$_SESSION['ADOCnn']->Execute("$sql");
			return $linha->fields[0];
			break;
		case "exibe_ocupadas":
			$sql="	SELECT
					    id_reserva,
					    id_cama,					    
					    dt_checkin,
					    dt_reserva_ini,
					    dt_reserva_fim,
					    nome as nome_pessoa,
					    tel,
					    cel,
					    obs_reserva,
					    id_pessoa
	    			from $tabela 
	    			where 
						(reserva_confirmada = 1) and
						(dt_checkin is not null) and
	    				(id_hostel = {$_SESSION["ID_HOSTEL_"]}) and  
	    				(data_baixa is null)
	    			order by dt_reserva_fim asc
	    			";
			//echo $sql;
			$linha=$_SESSION['ADOCnn']->Execute("$sql");
			$class="even";
			$n=0;
			if($linha->RecordCount() != 0 ){
				echo"<fieldset class='subgrupo'><legend>&nbsp;</legend>
					<table class='resultado2'>
				     <tr class='titulo'>	
							<td>Nome</td>
							<td>Tel / Cel</td>
							<td>Data Check in</td>
							<td>Reserva para</td>
							<td>Observa&ccedil;&otilde;es</td>
							<td>Ficha</td>
					 </tr>";

				while(!$linha->EOF){
					if($class == "odd"){$class="even";}else{$class="odd";}
					if(date("Y-m-d H:i:s") > $linha->fields['dt_reserva_fim']){$class_alerta="erro";}else{$class_alerta="";}



					echo"<tr class='$class'>
							<td><a href='mapa.jsp?pid_reserva={$linha->fields['id_reserva']}&pid_cama={$linha->fields['id_cama']}'>{$linha->fields['nome_pessoa']}</a></td>
							<td>{$linha->fields['tel']} {$linha->fields['cel']}</td>
							<td>".formataDataHora($linha->fields['dt_checkin'])."</td>
							<td>".formataData($linha->fields['dt_reserva_ini'],false)."&nbsp;".getHorario("E")."&nbsp;at&eacute;<br><span class='$class_alerta'>".formataData($linha->fields['dt_reserva_fim'])."&nbsp;".getHorario("S")."</span></td>
							<td>{$linha->fields['obs_reserva']}</td>
								<td>".($linha->fields['id_pessoa'] > 0 ? "<a href='../alts/alt_pes_pessoas.jsp?cont=8&pcodigo={$linha->fields['id_pessoa']}&pid_reserva={$linha->fields['id_reserva']}&pid_cama={$linha->fields['id_cama']}'>Ver</a>":"<a href='../cads/cad_pes_pessoas.jsp?pid_reserva={$linha->fields['id_reserva']}&pid_cama={$linha->fields['id_cama']}'>Preencher</a>")."</td>
						</tr>";
					$n++;
					$linha->MoveNext();
				}
				echo"</table><br><u>Total: $n</u><br><br></fieldset>";
			}
			break;
			
			###########################################################################

		case "exibe_ocupadas_plancamento":
			$sql="	SELECT
					    id_reserva,
					    id_cama,					    
					    dt_checkin,
					    dt_reserva_ini,
					    dt_reserva_fim,
					    nome as nome_pessoa,
					    tel,
					    cel,
					    obs_reserva,
					    id_pessoa
	    			from $tabela 
	    			where 
						(reserva_confirmada = 1) and
						(dt_checkin is not null) and
	    				(id_hostel = {$_SESSION["ID_HOSTEL_"]}) and  
	    				(data_baixa is null)
	    			order by dt_reserva_fim asc
	    			";
			//echo $sql;
			$linha=$_SESSION['ADOCnn']->Execute("$sql");
			$class="even";
			$n=0;
			if($linha->RecordCount() != 0 ){
				echo"<fieldset class='subgrupo'><legend>&nbsp;</legend>
					<table class='resultado2'>
				     <tr class='titulo'>	
							<td>Nome</td>
							<td>Tel / Cel</td>
							<td>Data Check in</td>
							<td>Reserva para</td>
							<td>Observa&ccedil;&otilde;es</td>
							<td>Ficha</td>
					 </tr>";

				while(!$linha->EOF){
					if($class == "odd"){$class="even";}else{$class="odd";}
					if(date("Y-m-d H:i:s") > $linha->fields['dt_reserva_fim']){$class_alerta="erro";}else{$class_alerta="";}



					echo"<tr class='$class'>
							<td><a href='mapa_ocupacional/calcula_lancar_consumo.jsp?pid_reserva={$linha->fields['id_reserva']}&pid_cama={$linha->fields['id_cama']}'>{$linha->fields['nome_pessoa']}</a></td>
							<td>{$linha->fields['tel']} {$linha->fields['cel']}</td>
							<td>".formataDataHora($linha->fields['dt_checkin'])."</td>
							<td>".formataData($linha->fields['dt_reserva_ini'],false)."&nbsp;".getHorario("E")."&nbsp;at&eacute;<br><span class='$class_alerta'>".formataData($linha->fields['dt_reserva_fim'])."&nbsp;".getHorario("S")."</span></td>
							<td>{$linha->fields['obs_reserva']}</td>
								<td>".($linha->fields['id_pessoa'] > 0 ? "<a href='../alts/alt_pes_pessoas.jsp?cont=8&pcodigo={$linha->fields['id_pessoa']}&pid_reserva={$linha->fields['id_reserva']}&pid_cama={$linha->fields['id_cama']}'>Ver</a>":"<a href='index.jsp?alt=8&cont=8?pid_reserva={$linha->fields['id_reserva']}&pid_cama={$linha->fields['id_cama']}'>Preencher</a>")."</td>
						</tr>";
					$n++;
					$linha->MoveNext();
				}
				echo"</table><br><u>Total: $n</u><br><br></fieldset>";
			}
			break;

			###########################################################################

		case "numero_de_vencidas":
			$hj = date("Y-m-d H:i:s");
			$sql="select count($campo1) from $tabela where
						(dt_cancela_auto < '$hj') and
						(reserva_confirmada = 0) and
	    				(id_hostel = {$_SESSION["ID_HOSTEL_"]}) and  
	    				(data_baixa is null)";
			//echo $sql;
			$linha=$_SESSION['ADOCnn']->Execute("$sql");
			return $linha->fields[0];
			break;
		case "exibe_vencidas":
			$hj = date("Y-m-d H:i:s");
			$sql="	SELECT
					    id_reserva,
					    id_cama,
					    data_cad_reserva,
					    dt_reserva_ini,
					    dt_reserva_fim,
					    nome as nome_pessoa,
					    tel,
					    cel,
					    email,
					    dt_cancela_auto,
					    obs_reserva,
					    id_pessoa
	    			from $tabela 
	    			where 
	    				(dt_cancela_auto < '$hj') and
	    				(reserva_confirmada = 0) and
	    				(id_hostel = {$_SESSION["ID_HOSTEL_"]}) and  
	    				(data_baixa is null)
	    			order by dt_cancela_auto desc
	    			
	    			";
			//echo $sql;
			$linha=$_SESSION['ADOCnn']->Execute("$sql");
			$class="even";
			$n=0;
			if($linha->RecordCount() != 0 ){
				echo"<fieldset class='subgrupo'><legend>&nbsp;</legend>
					<table class='resultado2'>
				     <tr class='titulo'>	
							<td>Nome</td>
							<td>Tel / Cel</td>
							<td>E-mail</td>
							<td>Data cadastro</td>
							<td>Reserva para</td>
							<td>Vencida desde</td>
							<td>Observa&ccedil;&otilde;es</td>
							<td>Ficha</td>
					 </tr>";

				while(!$linha->EOF){
					if($class == "odd"){$class="even";}else{$class="odd";}



					echo"<tr class='$class'>
							<td><a href='mapa.jsp?pid_reserva={$linha->fields['id_reserva']}&pid_cama={$linha->fields['id_cama']}'>{$linha->fields['nome_pessoa']}</a></td>
							<td>{$linha->fields['tel']} {$linha->fields['cel']}</td>
							<td>{$linha->fields['email']}</td>
							<td>".formataDataHora($linha->fields['data_cad_reserva'])."</td>
							<td>".formataData($linha->fields['dt_reserva_ini'],false)."&nbsp;".getHorario("E")."&nbsp;at&eacute;<br>".formataData($linha->fields['dt_reserva_fim'])."&nbsp;".getHorario("S")."</td>
							<td>".formataDataHora($linha->fields['dt_cancela_auto'])."</td>
							<td>{$linha->fields['obs_reserva']}</td>
							<td>".($linha->fields['id_pessoa'] > 0 ? "<a href='../alts/alt_pes_pessoas.jsp?cont=8&pcodigo={$linha->fields['id_pessoa']}&pid_reserva={$linha->fields['id_reserva']}&pid_cama={$linha->fields['id_cama']}'>Ver</a>":"<a href='../cads/cad_pes_pessoas.jsp?pid_reserva={$linha->fields['id_reserva']}&pid_cama={$linha->fields['id_cama']}'>Preencher</a>")."</td>
						</tr>";
					$n++;
					$linha->MoveNext();
				}
				echo"</table><br><u>Total de Vencidas: $n</u><br><br></fieldset>";
			}
			break;

	}
}


function getStatusReservas() {
	$num_tot_reservas = getReservas(0,"numero_tot_reservas");
	$num_vencidas = getReservas(0,"numero_de_vencidas");
	$num_confirmadas = getReservas(0,"numero_de_confirmadas");
	$num_ocupadas = getReservas(0,"numero_de_ocupadas");


	echo"
	<a href=\"javascript:showPopWin2('reservas_vencidas.jsp');\" class='amarelo'>Vencidas $num_vencidas/$num_tot_reservas</a>, 
	<a href=\"javascript:showPopWin2('reservas_confirmadas.jsp');\" class='verde'>Confirmadas $num_confirmadas</a>, 
	<a href=\"javascript:showPopWin2('reservas_ocupadas.jsp');\" class='azul'>Ocupa&ccedil;&otilde;es $num_ocupadas</a>";


}


function getCamasOcupadas($cods, $dt_reserva_ini, $dt_reserva_fim, $campo="id_cama") { //Y-m-d

	list($y,$m,$d) = explode("-",$dt_reserva_fim);
	$dt_reserva_fim_sql  = date("Y-m-d", mktime(0, 0, 0, $m  , $d, $y));

	/* acho q essa sql estava errada, mudei para a de baixo para teste: 18/06/2009

	$hr_ini = getHorario("E",true);
	$hr_fim = getHorario("S",true);

	$sql = "
	select
	distinct(id_cama)
	from
	hostel_reservas
	where
	(id_cama in ($cods)) and
	(id_hostel = {$_SESSION["ID_HOSTEL_"]}) and
	((dt_reserva_ini between '$dt_reserva_ini $hr_ini' and '$dt_reserva_fim_sql $hr_ini') or (dt_reserva_fim between '$dt_reserva_ini $hr_fim' and '$dt_reserva_fim_sql $hr_fim')) and
	(data_baixa is null)";
	*/

	$hr_ini = getHorario("E",false);
	$hr_fim = getHorario("S",false);

	$sql = "
		select 
			distinct($campo) 
		from 
			hostel_reservas 
		where 
			(id_cama in ($cods)) and 
			(id_hostel = {$_SESSION["ID_HOSTEL_"]}) and  
			(dt_reserva_ini <= '$dt_reserva_ini $hr_ini') and 
			(dt_reserva_fim >= '$dt_reserva_ini $hr_ini') and 
			(data_baixa is null)";

	//echo"<pre>$sql</pre>";
	$linha=$_SESSION['ADOCnn']->Execute("$sql");
	$retorno = "";
	if($linha->RecordCount() != 0 ){
		while(!$linha->EOF){
			$retorno .= $linha->fields[0].",";
			$linha->MoveNext();
		}
	}

	return substr($retorno,0,-1);
}





function setReservas($cod, $data_cad_reserva, $id_quem_cad, $dt_reserva_ini, $dt_reserva_fim, $id_cama,
$id_tp_habitacao, $id_hostel, $nome, $tel, $cel, $email, $obs_reserva, $dt_cancela_auto, $num_pessoas, $reserva_confirmada) {


	$hr_ini = getHorario("E",true);
	$hr_fim = getHorario("S",true);

	//efetuando reserva
	$campo1 = "id_reserva";
	$campo2 = "data_cad_reserva";
	$campo3 = "id_quem_cad";
	$campo4 = "dt_reserva_ini";
	$campo5 = "dt_reserva_fim";
	$campo6 = "id_cama";
	$campo7 = "id_tp_habitacao";
	$campo8 = "id_hostel";
	$campo9 = "nome";
	$campo10 = "tel";
	$campo11 = "cel";
	$campo12 = "email";
	$campo13 = "obs_reserva";
	$campo19 = "dt_cancela_auto";
	$campo22 = "num_pessoas";
	$campo23 = "reserva_confirmada";

	$tabela = "hostel_reservas";

	if($cod == 0){ // novo registro


		// verifica se ja existe uma reserva no mesmo periodo
		list($y,$m,$d) = explode("-",$dt_reserva_fim);
		$dt_reserva_fim_sql  = date("Y-m-d", mktime(0, 0, 0, $m  , $d, $y));

		$sqlv = "select count($campo1) from $tabela where ($campo6 = $id_cama) and ($campo8 = $id_hostel) and  (($campo4 between '$dt_reserva_ini $hr_ini' and '$dt_reserva_fim_sql $hr_ini') or
	    ($campo5 between '$dt_reserva_ini $hr_fim' and '$dt_reserva_fim_sql $hr_fim')) and (data_baixa is null)";

		$execv=$_SESSION['ADOCnn']->Execute("$sqlv");

		//echo"<pre>$sqlv</pre>"; exit;

		if($execv->fields[0] != 0){
			die("<div class='erro'>ATEN&Ccedil;&Atilde;O: J&aacute; existe uma reserva nesta data!</div>");
		}

		$hr_ini = getHorario("E");
		$hr_fim = getHorario("S");

		$sql="
                    insert into $tabela
                    ($campo2, $campo3, $campo4, $campo5, $campo6, $campo7, $campo8, $campo9, $campo10, $campo11, $campo12, $campo13, $campo19, $campo22, $campo23)
                    values
                    ('$data_cad_reserva', '$id_quem_cad', '$dt_reserva_ini $hr_ini', '$dt_reserva_fim $hr_fim', '$id_cama', 
                      '$id_tp_habitacao', '$id_hostel', '".strtoupper(trim($nome))."', '".strtoupper(trim($tel))."', 
                      '".strtoupper(trim($cel))."', '".strtolower(trim($email))."', '".trim($obs_reserva)."', '$dt_cancela_auto', $num_pessoas, $reserva_confirmada)";

		//echo"<pre>$sql</pre>"; //exit;

		if(!$exec=$_SESSION['ADOCnn']->Execute("$sql")){
			die("<div class='erro'>ERRO no cadastro de ".exibeNomeTabela($tabela)."</div>");
		}else{
			$id_gravado = $_SESSION['ADOCnn']->_insertid();

			if ($reserva_confirmada == 1) { // reserva direta ja com confirmacao, significa que foi entrada balcao
				echo"<div class='sucesso'>Entrada Balc&atilde;o (Check in direto): <u>$id_gravado</u> foi cadastrada com sucesso!<br>Entrada: ".formataData($dt_reserva_ini)." $hr_ini<br> Sa&iacute;da: ".formataData($dt_reserva_fim)." $hr_fim <br><br><br><br><br></div>";
				setReservasCheckin($id_gravado, date("Y-m-d H:i:s"), null, null, $num_pessoas,1,1);
			}else{
				echo"<div class='sucesso'>Reserva: <u>$id_gravado</u> foi cadastrada com sucesso!<br>Entrada: ".formataData($dt_reserva_ini)." $hr_ini<br> Sa&iacute;da: ".formataData($dt_reserva_fim)." $hr_fim <br></div>";
			}
		}

	}else{ // atualiza

		$hr_ini = getHorario("E");
		$hr_fim = getHorario("S");

		$sql="
                    update $tabela set
                    /*$campo2='$data_cad_reserva',*/
                    $campo3='$id_quem_cad',
                    $campo4='$dt_reserva_ini $hr_ini',
                    $campo5='$dt_reserva_fim $hr_fim',
                    /*$campo6='$id_cama',*/
                    $campo7='$id_tp_habitacao',
                    $campo8='$id_hostel',
                    $campo9='".strtoupper(trim($nome))."',
                    $campo10='".strtoupper(trim($tel))."',
                    $campo11='".strtoupper(trim($cel))."',
                    $campo12='".strtolower(trim($email))."',
                    $campo13='".trim($obs_reserva)."',
                    $campo19='$dt_cancela_auto',
                    $campo22=$num_pessoas/*,
                    $campo23=$reserva_confirmada*/
                    
                    
                    where
                    $campo1 = $cod
                    ";

		//echo"$sql";
		if(!$exec=$_SESSION['ADOCnn']->Execute("$sql")){
			die("<div class='erro'>ERRO na altera&ccedil;&atilde;o de ".exibeNomeTabela($tabela)."</div>");
		}else{
			echo"<div class='sucesso'>Reserva: <u>$cod</u> alterada com sucesso!<br /> Cancelamento autom&aacute;tico programado para: ".formataData($dt_cancela_auto)." ".date("H:i:s")."</div>";
		}
	}




}



function getHospedagensDaPessoa($id_pessoa) {

	$sql="	SELECT
					    id_reserva,
					    id_cama,
					    data_cad_reserva,
					    dt_reserva_ini,
					    dt_reserva_fim,
					    obs_reserva,
					    id_pessoa,
					    id_quem_cad
	    			from hostel_reservas 
	    			where 
	    				id_pessoa = $id_pessoa
	    			order by dt_reserva_ini desc		    			
	    			";
	//echo $sql;
	$linha=$_SESSION['ADOCnn']->Execute("$sql");
	$class="even";
	$n=0;
	if($linha->RecordCount() != 0 ){
		echo"<fieldset class='subgrupo'><legend>Hospedagens da pessoa</legend>
					<table class='perfil3'>
				     <tr class='titulo'>	
							<td>No.:</td>
							<td>Data&nbsp;cadastro</td>
							<td>Por</td>
							<td>Reserva para</td>
							<td>Observa&ccedil;&otilde;es</td>
					 </tr>";

		while(!$linha->EOF){
			if($class == "odd"){$class="even";}else{$class="odd";}



			echo"<tr class='$class'>
							<!--<td><a href='mapa.jsp?pid_reserva={$linha->fields['id_reserva']}&pid_cama={$linha->fields['id_cama']}'>{$linha->fields['nome_pessoa']}</a></td>-->
							<td>{$linha->fields['id_reserva']}</td>
							<td>".formataDataHora($linha->fields['data_cad_reserva'])."</td>
							<td>".retorna_quem_cad($linha->fields['id_quem_cad'])."</td>
							<td>".formataData($linha->fields['dt_reserva_ini'],false)."&nbsp;".getHorario("E")."&nbsp;at&eacute;<br>".formataData($linha->fields['dt_reserva_fim'])."&nbsp;".getHorario("S")."</td>
							<td>{$linha->fields['obs_reserva']}</td>
						</tr>";
			$n++;
			$linha->MoveNext();
		}
		echo"</table><br><u>Total: $n</u><br><br></fieldset>";
	}
}



function setReservasCheckin($cod, $dt_checkin, $id_pessoa, $num_comanda, $num_pessoas, $reserva_confirmada, $entrada_balcao) {
	//efetuando reserva
	$campo1 = "id_reserva";

	//efetuando check in
	$campo14 = "dt_checkin";
	$campo15 = "id_pessoa";
	$campo16 = "num_comanda";
	$campo22 = "num_pessoas";
	$campo23 = "reserva_confirmada";
	$campo19 = "dt_cancela_auto";
	$tabela = "hostel_reservas";



	if($cod == 0 or $cod == null){ // novo registro

		echo("<div class='erro'>Check in n&atilde;o identificado! Informe o n&uacute;mero da reserva.</div>");

	}else{ // atualiza

		if ($dt_checkin == null) {
			$cond1 = "$campo14 = null,";
			$msg = "Confirma&ccedil;&atilde;o da Reserva: <u>$cod</u> realizada com sucesso ".date("d/m/Y H:i")." hs";
			$msg_erro = "Confirma&ccedil;&atilde;o da Reserva";
		}else{
			$cond1 = "$campo14 = '$dt_checkin',";
			$msg = "Check in da Reserva: <u>$cod</u> realizado com sucesso!<br>Entrada: ".date("d/m/Y H:i")." hs<br> Comanda: $num_comanda";
			$msg_erro = "Check in da Reserva";
		}

		$sql="
                    update $tabela set
                    $cond1
                    $campo15='$id_pessoa',
                    $campo16='".trim($num_comanda)."',
                    $campo22=$num_pessoas,
                    entrada_balcao=$entrada_balcao,
                    $campo19=dt_reserva_fim, 
                    $campo23=$reserva_confirmada                    
                    where
                    $campo1 = $cod
                    ";

		//echo"$sql";
		if(!$exec=$_SESSION['ADOCnn']->Execute("$sql")){
			die("<div class='erro'>ERRO no cadastro: $msg_erro !</div>");
		}else{
			echo"<div class='sucesso'>$msg</div>";
		}
	}



}


function setReservasCheckout($cod, $data_baixa, $id_quem_baixa, $cancelada, $vl_pg_total, $obs_reserva) {
	//efetuando reserva
	$campo1 = "id_reserva";

	//efetuando check out ou  cancelamento
	$campo13 = "obs_reserva";
	$campo17 = "data_baixa";
	$campo18 = "id_quem_baixa";
	$campo20 = "cancelada";
	$campo21 = "vl_pg_total";

	$tabela = "hostel_reservas";


	$msg_cancelada = "Check out ";
	if ($cancelada == 1) {
		$msg_cancelada = "Cancelamento ";
	}

	if($cod == 0 or $cod == null){ // novo registro

		echo("<div class='erro'>$msg_cancelada n&atilde;o identificado! Informe o n&uacute;mero da reserva.</div>");

	}else{ // atualiza

		$condicao = "";
		if ($cancelada == 1) {
			$condicao = "$campo20=$cancelada,";
		}


		$sql0 = "select $campo13 from $tabela where $campo1 = $cod";
		$exec0=$_SESSION['ADOCnn']->Execute("$sql0");
		$obs_reserva_concat = $exec0->fields[0]."\n---Outras Obs:\n".trim($obs_reserva);



		$sql="
                    update $tabela set
                    $campo17='$data_baixa',
                    $campo18='$id_quem_baixa',
                    $condicao                    
                    $campo21='$vl_pg_total',
                    $campo13='$obs_reserva_concat'
                    where
                    $campo1 = $cod
                    ";

		//echo"$sql";
		if(!$exec=$_SESSION['ADOCnn']->Execute("$sql")){
			die("<div class='erro'>ERRO no cadastro do $msg_cancelada!</div>");
		}else{
			echo"<div class='sucesso'>$msg_cancelada da Reserva: <u>$cod</u> realizado com sucesso!<br /></div>";
		}
	}



}




function delReservas($cod, $verifica=true){

	//efetuando reserva
	$campo1 = "id_reserva";
	$campo2 = "data_cad_reserva";
	$campo3 = "id_quem_cad";
	$campo4 = "dt_reserva_ini";
	$campo5 = "dt_reserva_fim";
	$campo6 = "id_cama";
	$campo7 = "id_tp_habitacao";
	$campo8 = "id_hostel";
	$campo9 = "nome";
	$campo10 = "tel";
	$campo11 = "cel";
	$campo12 = "email";
	$campo13 = "obs_reserva";

	//efetuando check in
	$campo14 = "dt_checkin";
	$campo15 = "id_pessoa";
	$campo16 = "num_comanda";

	//efetuando check out ou  cancelamento
	$campo17 = "data_baixa";
	$campo18 = "id_quem_baixa";
	$campo19 = "dt_cancela_auto";
	$campo20 = "cancelada";
	$campo21 = "vl_pg_total";

	$tabela = "hostel_reservas";

	$deleta=1;
	/*
	if($verifica){
	$sql="select tombo, titulo from bibl_midias  where ref_idioma=$cod order by tombo";
	$linha=$_SESSION['ADOCnn']->Execute("$sql");

	$n=0;
	if($linha->RecordCount() != 0 ){
	while(!$linha->EOF){
	if($linha->fields[0]==true){
	echo"<li><b>Tombo: {$linha->fields[0]} - {$linha->fields[1]}</b></li>";
	$deleta=0;
	$n++;
	}
	if($n==10){echo"<BR>Entre outros...<BR><div class='erro'>N�o &eacute; poss&iacute;vel excluir o &iacute;tem selecionado pois possui v&iacute;nculo com os &iacute;tens acima</div> <BR>"; break;}
	$linha->MoveNext();
	}
	}
	} // fecha verifica
	*/
	if($deleta==1){
		$sql2="delete from $tabela where $campo1 = $cod";
		//echo $sql2;
		if(!$exec2=$_SESSION['ADOCnn']->Execute("$sql2")){
			die("<div class='erro'>ERRO na exclus�o do codigo: $cod</div>");
		}else{
			echo"<div class='sucesso'>C�digo: $cod exclu�do com sucesso</div><BR>";
		}
	}


}


?>
